package com.zmn.oms.dubbo.dto.zmn.order.shop;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * 类描述： 校验订单产品数量
 *
 * @author yule
 * @date 2021/1/13 17:12
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class CheckOrderProductNumberDIO implements Serializable {
	/**
	 * 渠道ID (必填)
	 */
	@NotNull(message = "channelId can not be empty")
	private Integer channelId;

	/**
	 * 前台产品Id(必填)
	 */
	@NotNull(message = "showProductId can not be empty")
	private Integer showProductId;
	/**
	 * 用户id(必填)
	 */
	@NotNull(message = "userId can not be empty")
	private Long userId;

	/**
	 * 产品数量
	 */
    @NotNull(message = "productNumber can not be empty")
	private Integer number;

	/**
	 * 服务项类型，目前仅支持两种类型： 1.非计价器订单 2.计价器订单
	 * 若值不等于2，则均作为值等于1处理
	 */
	@NotNull(message = "servItemType can not be empty")
	private Integer servItemType;

	/**
	 * 订单业务类型：1保外业务（C），2保内业务（F），3工程业务（B）
	 */
	@NotNull(message = "bizType can not be empty")
	private Integer bizType;

	/**
	 * 订单下单时间
	 */
	private Date receiveTime;
}
